﻿#region Using directives.
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Collections;
using System.Globalization;
using System.Text;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.ComponentModel;
using System.Web.UI.Design;
using System.Drawing;
using System.Reflection;

using eWorld.UI;

#endregion
using BizElements.BusinessLayer;

namespace BizElements.Web
{
    #region Documentation.
    /// <summary>
    /// Lookup control bound to a <see cref="BizElements.BusinessLayer.IBindableField"/> business class property
    /// which includes at least one displayable field (see <see cref="BizElements.BusinessLayer.IBindableField.SatelliteFields"/>).
    /// </summary>
    /// <remarks>
    /// <para>Lookup control allows users to select an item (key and display value) by using <see cref="SearchProvider"/> objects.</para>
    /// <para>Tipically the lookup control is bound, similarly to list controls such as DropDownList,
    /// to a single key property (set and retrieved by <see cref="ILookupControl.SelectedValue"/> property) which is hidden from 
    /// the user. The <see cref="ILookupControl.Text"/> property of the lookup control shows a display member
    /// (see <see cref="BizElements.BusinessLayer.IBindableField.SatelliteFields"/>). Eg. when selecting a country 
    /// from a flyout menu/list, the <see cref="ILookupControl.SelectedValue"/> property will contain <b>CountryId</b> value and the 
    /// <see cref="ILookupControl.Text"/> property will contain <b>CountryName</b>.</para>
    /// </remarks>
    #endregion
    public interface IBoundLookupControl : ILookupControl, IBoundControl
    {
    }
}